package com.hais1992.oneday.common;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

public class JsonToObjectList {

	/**
	 * 獲取文章列表
	 * @param json
	 * @return
	 */
	public static List<Map<String,Object>> articleList(String json) {
		List<Map<String,Object>> list =new ArrayList<Map<String,Object>>();
		//解析JSON
        try {
			JSONArray jsonArray = new JSONObject(json).getJSONArray("articles");	//获取 articles 下 的数组
			for (int j = 0; j < jsonArray.length(); j++) {					//循环解析 json 的每一条
				JSONObject articleJson = jsonArray.getJSONObject(j);		//获取 每篇文章的 json
				Map<String,Object> map = new HashMap<String, Object>();
				Iterator<String> iterator = articleJson.keys();				//声明迭代器
				while (iterator.hasNext()) {
					String key = iterator.next();
					Object value = articleJson.get(key);
					map.put(key, value);
				}
				list.add(map);		//添加文章到文章列表
			}
		} catch (JSONException e) {
			e.printStackTrace();
		}
        return list;
	}
	
	/**
	 * 獲取評論列表
	 * @param json
	 * @return
	 */
	public static List<Map<String,Object>> reviewList(String json) {
		List<Map<String,Object>> list =new ArrayList<Map<String,Object>>();
		//解析JSON
        try {
			JSONArray jsonArray = new JSONObject(json).getJSONArray("reviews");	//获取 articles 下 的数组
			for (int j = 0; j < jsonArray.length(); j++) {					//循环解析 json 的每一条
				JSONObject articleJson = jsonArray.getJSONObject(j);		//获取 每篇文章的 json
				Map<String,Object> map = new HashMap<String, Object>();
				Iterator<String> iterator = articleJson.keys();				//声明迭代器
				while (iterator.hasNext()) {
					String key = iterator.next();
					Object value = articleJson.get(key);
					map.put(key, value);
				}
				list.add(map);		//添加文章到文章列表
			}
		} catch (JSONException e) {
			e.printStackTrace();
		}
        return list;
	}

}
